///////////////////////////////////////////////////////////
//  GameLoggerDebug.h
//  Implementation of the Class GameLoggerDebug
//  Created on:      11-Jan-2015 4:13:26 PM
//  Original author: Eng. Ahmed Yasser
///////////////////////////////////////////////////////////

#if !defined(EA_C0269DA5_D87F_4aa6_AC60_F37DCEFA7832__INCLUDED_)
#define EA_C0269DA5_D87F_4aa6_AC60_F37DCEFA7832__INCLUDED_

#include "IGameLog.h"

namespace EngineGame
{
	namespace EngineProfile
	{
		/**
		 * Log the logging data to the debug of the development environment
		 * @author Eng. Ahmed Yasser
		 * @version 1.0
		 * @updated 12-Jan-2015 12:01:54 PM
		 */
		class GameLoggerDebug : public EngineGame::EngineProfile::IGameLog
		{

		public:
			GameLoggerDebug();
			virtual ~GameLoggerDebug();
			GameLoggerDebug(const GameLoggerDebug& theGameLoggerDebug);

			/**
			 * Close the logger and release any attached resources to it
			 */
			virtual void closeLogger();
			/**
			 * Initialize the logger system with any additional resources needed
			 */
			virtual void initLogger();
			/**
			 * Log any string data in the logger
			 * 
			 * @param logString    The log string that will be logged in the system
			 */
			virtual void log(std::string logString);

		};

	}

}
#endif // !defined(EA_C0269DA5_D87F_4aa6_AC60_F37DCEFA7832__INCLUDED_)
